@echo off
title 编译错误修复验证脚本

echo ========================================
echo 酒店管理系统编译错误修复验证
echo ========================================
echo.

echo [信息] 正在检查修复效果...
echo.

echo 1. 清理项目...
mvn clean
if %errorlevel% neq 0 (
    echo [错误] 项目清理失败
    goto :error
)
echo [成功] 项目清理完成

echo.
echo 2. 编译项目...
mvn compile
if %errorlevel% neq 0 (
    echo [错误] 项目编译失败，请检查错误信息
    goto :error
)
echo [成功] 项目编译成功

echo.
echo 3. 运行测试...
mvn test
if %errorlevel% neq 0 (
    echo [警告] 测试运行失败，但编译成功
) else (
    echo [成功] 测试运行成功
)

echo.
echo 4. 验证启动...
echo [信息] 尝试启动应用进行验证...
timeout /t 2 /nobreak >nul
start /b mvn spring-boot:run
echo [信息] 应用启动中，等待10秒...
timeout /t 10 /nobreak >nul

echo.
echo 5. 测试健康检查接口...
curl -s http://localhost:8080/api/health >nul 2>&1
if %errorlevel% == 0 (
    echo [成功] 健康检查接口响应正常
    curl http://localhost:8080/api/health
) else (
    echo [信息] 健康检查接口暂时无响应（可能还在启动中）
)

echo.
echo ========================================
echo 修复验证完成
echo ========================================
echo.
echo 修复内容总结：
echo 1. ✅ 修复了MySQL连接器依赖问题
echo 2. ✅ 修复了Java版本兼容性问题（改为Java 8）
echo 3. ✅ 修复了validation包导入问题
echo 4. ✅ 修复了LocalDateTime兼容性问题（改为Date）
echo 5. ✅ 修复了JPA注解兼容性问题
echo.
echo 如果应用正在运行，请手动停止：
echo Ctrl+C 或关闭命令行窗口
echo.
goto :end

:error
echo.
echo ========================================
echo 修复验证失败
echo ========================================
echo.
echo 请检查以下内容：
echo 1. Java环境是否正确安装（JDK 8+）
echo 2. Maven环境是否正确配置
echo 3. 网络连接是否正常（下载依赖）
echo 4. 项目文件是否完整
echo.

:end
pause
